All Packages Class Hierarchy This Package Previous Next Index
Class com.sun.java.swing.JMenu
java.lang.Object
|
+----java.awt.Component
|
+----java.awt.Container
|
+----com.sun.java.swing.JComponent
|
+----com.sun.java.swing.AbstractButton
|
+----com.sun.java.swing.JMenuItem
|
+----com.sun.java.swing.JMenu
- public class JMenu
- extends JMenuItem
- implements Accessible, MenuElement
An implementation of a menu -- a popup window containing JMenuItem
s that
is displayed when the user selects an item on the JMenuBar
. In addition
to JMenuItems, a JMenu can also contain JSeparator
s.
In essence, a menu is a button with an associated JPopupMenu.
When the "button" is pressed, the JPopupMenu appears. If the
"button" is on the JMenuBar, the menu is a top-level window.
If the "button" is another menu item, then the JPopupMenu is
"pull-right" menu.
For the keyboard keys used by this component in the standard Look and
Feel (L&F) renditions, see the
JMenu key assignments.
Warning: serialized objects of this class will not be compatible with
future swing releases. The current serialization support is appropriate
for short term storage or RMI between Swing1.0 applications. It will
not be possible to load serialized Swing1.0 objects with future releases
of Swing. The JDK1.2 release of Swing will be the compatibility
baseline for the serialized form of Swing objects.
- See Also:
- JMenuItem, JSeparator, JMenuBar, JPopupMenu
-
popupListener
- The window-closing listener for the popup.
-
JMenu()
- Creates a new JMenu with no text.
-
JMenu(String)
- Creates a new JMenu with the supplied string as its text
-
JMenu(String, boolean)
- Creates a new JMenu with the supplied string as its text
and specified as a tear-off menu or not.
-
add(Action)
- Creates a new menuitem attached to the specified
Action object and appends it to the end of this menu.
-
add(Component)
- Appends a component to the end of this menu.
-
add(JMenuItem)
- Appends a menuitem to the end of this menu.
-
add(String)
- Creates a new menuitem with the specified text and appends
it to the end of this menu.
-
addMenuListener(MenuListener)
- Add a listener for menu events
-
addSeparator()
- Append a new separator to the end of the menu.
-
createActionChangeListener(JMenuItem)
-
-
createWinListener(JPopupMenu)
- Create a window-closing listener for the popup.
-
fireMenuDeselected()
- Notify all listeners that have registered interest for
notification on this event type.
-
fireMenuSelected()
- Notify all listeners that have registered interest for
notification on this event type.
-
getAccessibleContext()
- Get the AccessibleContext associated with this JComponent
-
getComponent()
- This method returns the java.awt.Component used to paint this object.
-
getDelay()
- Returns the suggested delay before the menu's PopupMenu is popped up or down.
-
getItem(int)
-
Returns the JMenuItem at the specified position.
-
getItemCount()
- Returns the number of items on the menu, including separators.
-
getMenuComponent(int)
- Returns the component at position n
-
getMenuComponentCount()
- Returns the number of components on the menu.
-
getMenuComponents()
- Returns an array of the menu's subcomponents
-
getPopupMenu()
- Returns the popupmenu associated with this menu
-
getSubElements()
- This method should return an array containing the sub-menu components for this menu component
-
getUIClassID()
- Returns the name of the L&F class that renders this component.
-
insert(Action, int)
- Insert a new menuitem attached to the specified Action
object at a given position.
-
insert(JMenuItem, int)
- Insert the specified JMenuitem at a given position.
-
insert(String, int)
- Insert a new menuitem with the specified text at a
given position.
-
insertSeparator(int)
- Inserts a separator at the specified position.
-
isMenuComponent(Component)
- Returns true if the specified component exists in the
submenu hierarchy.
-
isPopupMenuVisible()
- Returns true if the menu's popup window is visible.
-
isSelected()
- Returns true if the menu is currently selected (popped up).
-
isTearOff()
- Returns true if the menu can be torn off.
-
isTopLevelMenu()
- Returns true if the menu is a 'top-level menu', that is, if it is
the direct child of a menubar.
-
menuSelectionChanged(boolean)
-
-
paramString()
- Gets the parameter string representing the state of this menu.
-
processKeyEvent(KeyEvent)
-
-
processKeyEvent(KeyEvent, MenuElement[], MenuSelectionManager)
- Implemented to be a MenuElement.
-
processMouseEvent(MouseEvent, MenuElement[], MenuSelectionManager)
- Process a mouse event.
-
remove(int)
- Removes the menu item at the specified index from this menu.
-
remove(JMenuItem)
- Removes the specified menu item from this menu.
-
removeAll()
- Remove all menu items from this menu.
-
removeMenuListener(MenuListener)
- Remove a listener for menu events
-
setAccelerator(KeyStroke)
-
-
setDelay(int)
- Sets the suggested delay before the menu's PopupMenu is popped up or down.
-
setMenuLocation(int, int)
- Set the location of the popup component
-
setModel(ButtonModel)
- Set the data model for the "menu button" -- the label
that the user clicks to open or close the menu.
-
setPopupMenuVisible(boolean)
- Set the visibility of the Menu's popup portion.
-
setSelected(boolean)
- Sets the selection status of the menu.
-
setUI(MenuUI)
- Sets the L&F object that renders this component.
-
updateUI()
- Notification from the UIFactory that the L&F has changed.
popupListener
protected JMenu. WinListener popupListener
- The window-closing listener for the popup.
- See Also:
- JMenu. WinListener
JMenu
public JMenu()
- Creates a new JMenu with no text.
JMenu
public JMenu(String s)
- Creates a new JMenu with the supplied string as its text
- Parameters:
- s - The text for the menu label
JMenu
public JMenu(String s,
boolean b)
- Creates a new JMenu with the supplied string as its text
and specified as a tear-off menu or not.
- Parameters:
- s - The text for the menu label
- b - can the menu be torn off (not yet implemented)
setUI
public void setUI(MenuUI ui)
- Sets the L&F object that renders this component.
- Parameters:
- ui - the new MenuUI
- See Also:
- getUI
updateUI
public void updateUI()
- Notification from the UIFactory that the L&F has changed.
Called to replace the UI with the latest version from the
UIFactory.
- Overrides:
- updateUI in class JMenuItem
- See Also:
- updateUI
getUIClassID
public String getUIClassID()
- Returns the name of the L&F class that renders this component.
- Returns:
- "MenuUI"
- Overrides:
- getUIClassID in class JMenuItem
- See Also:
- getUIClassID, getUI
setModel
public void setModel(ButtonModel newModel)
- Set the data model for the "menu button" -- the label
that the user clicks to open or close the menu.
- Parameters:
- m - the ButtonModel
- Overrides:
- setModel in class AbstractButton
- See Also:
- getModel
isSelected
public boolean isSelected()
- Returns true if the menu is currently selected (popped up).
- Returns:
- true if the menu is open, else false
- Overrides:
- isSelected in class AbstractButton
setSelected
public void setSelected(boolean b)
- Sets the selection status of the menu.
- Parameters:
- b - a boolean value -- true to select the menu and
open it, false to unselect the menu and close it
- Overrides:
- setSelected in class AbstractButton
isPopupMenuVisible
public boolean isPopupMenuVisible()
- Returns true if the menu's popup window is visible.
- Returns:
- true if the menu is visible, else false
setPopupMenuVisible
public void setPopupMenuVisible(boolean b)
- Set the visibility of the Menu's popup portion. The popup
may only be made visible if the menu is itself showing on
the screen.
- Parameters:
- b - a boolean value -- true to make the menu visible,
false to hide it
getDelay
public int getDelay()
- Returns the suggested delay before the menu's PopupMenu is popped up or down.
- Returns:
- an int -- the number of milliseconds to delay
setDelay
public void setDelay(int d)
- Sets the suggested delay before the menu's PopupMenu is popped up or down.
- Parameters:
- d - the number of milliseconds to delay
- Throws: IllegalArgumentException
- if the value of
d
is less than 0.
setMenuLocation
public void setMenuLocation(int x,
int y)
- Set the location of the popup component
- Parameters:
- x - the x coordinate of the popup's new position
- y - the y coordinate of the popup's new position
add
public JMenuItem add(JMenuItem menuItem)
- Appends a menuitem to the end of this menu.
Returns the menuitem added.
- Parameters:
- menuItem - the JMenuitem to be added
- Returns:
- the JMenuItem added
add
public Component add(Component c)
- Appends a component to the end of this menu.
Returns the component added.
- Parameters:
- c - the Component to add
- Returns:
- the Component added
- Overrides:
- add in class Container
add
public void add(String s)
- Creates a new menuitem with the specified text and appends
it to the end of this menu.
- Parameters:
- s - the string for the menuitem to be added
add
public JMenuItem add(Action a)
- Creates a new menuitem attached to the specified
Action object and appends it to the end of this menu.
- Parameters:
- a - the Action for the menuitem to be added
- See Also:
- Action
createActionChangeListener
protected PropertyChangeListener createActionChangeListener(JMenuItem b)
addSeparator
public void addSeparator()
- Append a new separator to the end of the menu.
insert
public void insert(String s,
int pos)
- Insert a new menuitem with the specified text at a
given position.
- Parameters:
- s - the text for the menuitem to add
- pos - an int giving the position at which to add the
new menuitem
insert
public JMenuItem insert(JMenuItem mi,
int pos)
- Insert the specified JMenuitem at a given position.
- Parameters:
- mi - the JMenuitem to add
- pos - an int giving the position at which to add the
new JMenuitem
insert
public JMenuItem insert(Action a,
int pos)
- Insert a new menuitem attached to the specified Action
object at a given position.
- Parameters:
- a - the Action object for the menuitem to add
- pos - an int giving the position at which to add the
new menuitem
insertSeparator
public void insertSeparator(int index)
- Inserts a separator at the specified position.
- Parameters:
- index - an int giving the position at which to
insert the menu separator
- Throws: IllegalArgumentException
- if the value of
index
is less than 0.
getItem
public JMenuItem getItem(int pos)
- Returns the JMenuItem at the specified position.
If the specified position contains a separator, this JMenu
is returned.
- Parameters:
- pos - an int giving the position
- Throws: IllegalArgumentException
- if the value of
index
is less than 0.
getItemCount
public int getItemCount()
- Returns the number of items on the menu, including separators.
This method is included for AWT compatibility.
- Returns:
- an int equal to the number of items on the menu
- See Also:
- getMenuComponentCount
isTearOff
public boolean isTearOff()
- Returns true if the menu can be torn off.
- Returns:
- true if the menu can be torn off, else false
remove
public void remove(JMenuItem item)
- Removes the specified menu item from this menu.
- Parameters:
- item - the JMenuItem to be removed from the menu
remove
public void remove(int pos)
- Removes the menu item at the specified index from this menu.
- Parameters:
- index - the position of the item to be removed.
- Throws: IllegalArgumentException
- if the value of
index
is less than 0.
- Overrides:
- remove in class Container
removeAll
public void removeAll()
- Remove all menu items from this menu.
- Overrides:
- removeAll in class Container
getMenuComponentCount
public int getMenuComponentCount()
- Returns the number of components on the menu.
- Returns:
- an int -- the number of components on the menu
getMenuComponent
public Component getMenuComponent(int n)
- Returns the component at position n
- Parameters:
- n - the position of the component to be returned
getMenuComponents
public Component[] getMenuComponents()
- Returns an array of the menu's subcomponents
- Returns:
- an array of Components
paramString
public String paramString()
- Gets the parameter string representing the state of this menu.
This string is useful for debugging.
- Returns:
- a String containing the menu parameters
- Overrides:
- paramString in class Container
isTopLevelMenu
public boolean isTopLevelMenu()
- Returns true if the menu is a 'top-level menu', that is, if it is
the direct child of a menubar.
- Returns:
- true if the menu is activated from the menu bar,
false if the menu is activated from a menu item
on another menu
isMenuComponent
public boolean isMenuComponent(Component c)
- Returns true if the specified component exists in the
submenu hierarchy.
- Parameters:
- c - the Component to be tested
- Returns:
- true if the component exists
getPopupMenu
public JPopupMenu getPopupMenu()
- Returns the popupmenu associated with this menu
addMenuListener
public void addMenuListener(MenuListener l)
- Add a listener for menu events
- Parameters:
- l - the listener to be added
removeMenuListener
public void removeMenuListener(MenuListener l)
- Remove a listener for menu events
- Parameters:
- l - the listener to be removed
fireMenuSelected
protected void fireMenuSelected()
- Notify all listeners that have registered interest for
notification on this event type. The event instance
is lazily created using the parameters passed into
the fire method.
- See Also:
- EventListenerList
fireMenuDeselected
protected void fireMenuDeselected()
- Notify all listeners that have registered interest for
notification on this event type. The event instance
is lazily created using the parameters passed into
the fire method.
- See Also:
- EventListenerList
createWinListener
protected JMenu. WinListener createWinListener(JPopupMenu p)
- Create a window-closing listener for the popup.
- Parameters:
- p - the JPopupMenu
- See Also:
- JMenu. WinListener
processMouseEvent
public void processMouseEvent(MouseEvent event,
MenuElement path[],
MenuSelectionManager manager)
- Process a mouse event. event is a MouseEvent with source being the receiving component.
componentPath is the path of the receiving MenuComponent in the menu
hierarchy. manager is the MenuSelectionManager for the menu hierarchy.
This method should process the MouseEvent and change the menu selection if necessary
by using MenuSelectionManager's API
Note: you do not have to forward the event to sub-components. This is done automatically
by the MenuSelectionManager
- Overrides:
- processMouseEvent in class JMenuItem
processKeyEvent
public void processKeyEvent(KeyEvent e,
MenuElement path[],
MenuSelectionManager manager)
- Implemented to be a MenuElement. This message is forwarded to the UI
- Overrides:
- processKeyEvent in class JMenuItem
menuSelectionChanged
public void menuSelectionChanged(boolean isIncluded)
- Overrides:
- menuSelectionChanged in class JMenuItem
getSubElements
public MenuElement[] getSubElements()
- This method should return an array containing the sub-menu components for this menu component
- Overrides:
- getSubElements in class JMenuItem
getComponent
public Component getComponent()
- This method returns the java.awt.Component used to paint this object.
- Overrides:
- getComponent in class JMenuItem
setAccelerator
public void setAccelerator(KeyStroke keyStroke)
- Overrides:
- setAccelerator in class JMenuItem
processKeyEvent
protected void processKeyEvent(KeyEvent e)
- Overrides:
- processKeyEvent in class JComponent
getAccessibleContext
public AccessibleContext getAccessibleContext()
- Get the AccessibleContext associated with this JComponent
- Returns:
- the AccessibleContext of this JComponent
- Overrides:
- getAccessibleContext in class JMenuItem
All Packages Class Hierarchy This Package Previous Next Index